package cn.wolfcode.crm.mapper;

import cn.wolfcode.crm.domain.Customer;
import cn.wolfcode.crm.query.impl.CustomerQuery;
import org.apache.ibatis.annotations.Param;

import java.util.List;

public interface CustomerMapper {
    int deleteByPrimaryKey(Long id);

    void updateDate(Customer customer);

    int insert(Customer record);

    Customer selectByPrimaryKey(Long id);

    List<Customer> selectAll(CustomerQuery qo);

    int updateByPrimaryKey(Customer record);

    int queryForCount(CustomerQuery query);

    List<Customer>  queryForList(CustomerQuery query);

    void setInchargeuser(Customer customer);

    void  moveResource(Long id);

    void setOfficial(@Param("id") Long id, @Param("chargeId") Long chargeId);

    Customer selectByName(String name);

    List<Customer> getAll();

}